INSERT INTO 命令は、テーブルに新しいレコードを挿入するために使用されます。
INSERT INTO ステートメントは、次の 2 つの方法で記述できます。
1. 挿入する列名と値を指定します。
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...)
2. テーブル内のすべての列に値を追加する場合は、SQL クエリで列名を指定する必要はありません。 ただし、値の順序がテーブル内の列の順序と一致していることを確認してください。 ここでの INSERT INTO 構文は次のようになります。
INSERT INTO table_name
VALUES (value1, value2, value3, ...)
以下は、Northwind データベースの Customers テーブルのサンプルです。
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 | Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 | Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
次の SQL ステートメントは、「Customers」テーブルに新しいレコードを挿入します。
INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway')
「Customers」テーブルからの選択は次のようになります。
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 | Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 | Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
92 | Cardinal | Tom B. Erichsen | Skagen 21 | Stavanger | 4006 | Norway |
特定の列にのみデータを挿入することもできます。
次の SQL ステートメントは新しいレコードを挿入しますが、「CustomerName」、「City」、「country」列のデータのみが挿入されます (CustomerID は自動的に更新されます)。
INSERT INTO Customers (CustomerName, City, Country)
VALUES ('Cardinal', 'Stavanger', 'Norway')
「Customers」テーブルからの選択は次のようになります。
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
89 | White Clover Markets | Karl Jablonski | 305 - 14th Ave. S. Suite 3B | Seattle | 98128 | USA |
90 | Wilman Kala | Matti Karttunen | Keskuskatu 45 | Helsinki | 21240 | Finland |
91 | Wolski | Zbyszek | ul. Filtrowa 68 | Walla | 01-012 | Poland |
92 | Cardinal | null | null | Stavanger | null | Norway |